import PerfectLib
import PerfectHTTP
import PerfectHTTPServer
import ECApp
import PerfectSession
import PerfectSessionMySQL
import PerfectLogger

LogFile.info("")
LogFile.info("======准备开启服务器=======")
LogFile.info("")
// 创建HTTP服务器
let server = HTTPServer()
server.serverPort = 8181 // 监听8181端口

// 注册服务器的全局路由——请求／响应句柄
server.addRoutes(globalRoutes)
LogFile.info("注册服务器全局路由")

//注册服务器的全局过滤器
server.setResponseFilters(globalResponseFilters)
LogFile.info("注册服务器全局过滤器")

// 将定制路由注册到服务器上
server.addRoutes(ECAppConfig.getRoutes())
LogFile.info("注册ECApp服务的路由")
// 将定制过滤器添加到服务器
server.setRequestFilters(ECAppConfig.getRequestFilters())
//server.setResponseFilters(ECAppConfig.getResponseFilters())
LogFile.info("注册ECApp服务的过滤器")

ECAppConfig.init()

do {
    // 启动HTTP服务器
    LogFile.info("启动服务器")
    try server.start()
} catch PerfectError.networkError(let err, let msg) {
    LogFile.error("服务器启动失败: \(err) \(msg)")
}
// /Users/pingcheng/Documents/Project/Server/Server

/*
 
 需要 brew install mysql ，命令行就可以
 [10:01]
 Swift 只支持 brew 和 apt-get 两种工业标准的函数库安装方式
 
 $ pkg-config mysqlclient --cflags --libs
 -I/usr/local/Cellar/mysql/5.7.19/include/mysql
 -L/usr/local/Cellar/mysql/5.7.19/lib -lmysqlclient
 
 记住编译前运行  pkg-config mysqlclient --cflags --libs
 确定mysql的开发函数库
 
 */

